/**
 * Copyright© 2003-2019 浙江汇信科技有限公司, All Rights Reserved. <br/>
 * 描述: TODO <br/>
 *
 * @author framework generator
 * @date 2022年02月15日
 * @version 2.0
 */
package com.icinfo.cloud.provider.punish.ucase.casemain.mapper;

import com.icinfo.cloud.provider.punish.ucase.casemain.dto.CasePartiesAndLegalRecordDto;
import com.icinfo.cloud.provider.punish.ucase.casemain.dto.CasePartiesLegalInfoDto;
import com.icinfo.cloud.provider.punish.ucase.casemain.dto.CasePartyRecordAdjustLegalSaveDto;
import com.icinfo.cloud.provider.punish.ucase.casemain.model.CasePartiesLegalInfo;
import com.icinfo.cloud.provider.punish.ucase.casemain.vo.CasePartiesLegalInfoVo;
import com.icinfo.framework.mybatis.mapper.common.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 描述: 案件当事人法人详细信息-TRJ case_parties_legal_info 对应的Mapper接口.<br>
 *
 * @author framework generator
 * @date 2022年02月15日
 */
public interface CasePartiesLegalInfoMapper extends Mapper<CasePartiesLegalInfo> {

    /**
     * 描述：获取缺失法人证件信息的法定代表人信息
     *
     * @param caseId 案件id
     * @return {@link List <CasePartiesLegalInfoVo>}
     * @author xiangyuyu
     * @date 2022-05-23 10:02
     */
    List<CasePartiesLegalInfoVo> selectLegalInfoWhoLoseLegalCertInfo(String caseId);

    /**
     * 通过uniscid查询当事人信息，查询当事人和企业
     * @param uniscid
     * @return
     */
    List<CasePartiesAndLegalRecordDto> selectPartiesAndLegalrecord(String uniscid);
    /**
     * 删除法人
     * @param map
     * @return
     */
    int deleteAllByCaseId(Map map);

    /**
     * 据caseId获取有效的单位数据
     * @param caseId
     * @return
     */
    CasePartiesLegalInfo getInfoByCaseId(@Param("caseId") String caseId);


    /**
     * 选择政党法律信息dto案件id
     *
     * @param caseId 用例id
     * @return {@link List<CasePartiesLegalInfoDto> }
     * @author shishengyao
     * @date 2023/03/24
     */
    List<CasePartyRecordAdjustLegalSaveDto> selectCasePartiesLegalInfoDtoByCaseId(@Param("caseId") String caseId);
}
